/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.ipartek.formacion.gestformwww.controlador;

import com.ipartek.formacion.gestformwww.modelo.ModeloDiaClase;

import com.ipartek.formacion.gestformwww.modelo.beans.excepciones.GestorFormacionExcepcion;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 *
 * @author Alvaro y Karmele
 */
public class BorrarCalendarioAccion implements Accion {

   
    private final String visualizarcurso = "visualizar-curso-accion";

    public AccionRouter ejecuta(HttpServlet servlet, HttpServletRequest request, HttpServletResponse response) {
        HttpSession sesion = request.getSession();
        AccionServlet as=(AccionServlet) servlet;
        ArrayList<String> mensajes = new ArrayList<String>();
        AccionRouter router = null;
        Boolean correcto=false;

        boolean ejecutar = Verificador.sinReenvio("aleatorioBorrarCalendario", sesion, request);
        if (sesion.getAttribute("usuario") != null && request.getMethod().equalsIgnoreCase("POST")) {
            ModeloDiaClase modelo = (ModeloDiaClase) servlet.getServletContext().getAttribute("ModeloDiaClase");
              if (request.getParameter("idCurso") != null && ejecutar) { //Verificar numero
                    Integer CurId=Integer.parseInt(request.getParameter("idCurso"));
                    try {
                        modelo.borrarCalendario(CurId);
                        correcto = true;
                    } catch (GestorFormacionExcepcion ex) {
                        Logger.getLogger(BorrarCalendarioAccion.class.getName()).log(Level.SEVERE, null, ex);
                        sesion.setAttribute("excepciones", ex.getMessage());
                    }
                }
                if(correcto) {
                mensajes.add("mensaje-borrar-calendario");
                sesion.setAttribute("mensajes", mensajes);
            }
            try {
                router=as.getFactory().getAction(as.getNombreClaseRecurso(visualizarcurso),servlet.getClass().getClassLoader()).ejecuta(servlet, request, response);
            } catch (ClassNotFoundException ex) {
                Logger.getLogger(BorrarCalendarioAccion.class.getName()).log(Level.SEVERE, null, ex);
            } catch (InstantiationException ex) {
                Logger.getLogger(BorrarCalendarioAccion.class.getName()).log(Level.SEVERE, null, ex);
            } catch (IllegalAccessException ex) {
                Logger.getLogger(BorrarCalendarioAccion.class.getName()).log(Level.SEVERE, null, ex);
            }
          
        } else {
            router = new AccionRouter("inicio");
        }
        return router;
        }

   
   
}
